﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace LeetCode.CodeDay
{
    public partial class Code
    {
        /// <summary>
        /// e3frfsdfghsdyrrt  e3.*fg..f*yr.tr*
        /// 给你一个字符串 s 和一个字符规律 p，请你来实现一个支持 '.' 和 '*' 的正则表达式匹配。
        /// '.' 匹配任意单个字符
        /// '*' 匹配零个或多个前面的那一个元素
        /// 所谓匹配，是要涵盖 整个 字符串 s的，而不是部分字符串。
        /// <returns></returns>
        public bool IsMatch_bak(string s, string p)
        {
            List<char> sArr = s.ToCharArray().ToList();
            List<char> pArr = p.ToCharArray().ToList();
            List<List<char>> rs = new List<List<char>>();
            while (pArr.IndexOf('*') > -1)
            {
                var n1 = pArr.Take(pArr.IndexOf('*') - 1).ToList();
                if (n1.Count > 0)
                    rs.Add(n1);
                pArr = pArr.Skip(pArr.IndexOf('*') - 1).ToList();
                rs.Add(pArr.Take(2).ToList());
                pArr = pArr.Skip(2).ToList();
            }
   
            return false;
        }
    }
}
